Published on

Rastreamento da Localização de um Usuário

Authors
  • avatar
    Name
    Rodrigo Peixoto
    Twitter

Teste de Engenharia Social com Seeker e Ngrok

⚠️ Este experimento foi feito de forma ética e controlada. Usar essas técnicas sem consentimento é ilegal e viola princípios de privacidade e segurança.

⚙️ Ferramentas utilizadas

  • Seeker: Gera uma página falsa que solicita a localização.
  • Ngrok: Expõe o servidor local do Seeker na internet por meio de um túnel seguro.

🧪 Metodologia

  1. Executei o Seeker localmente para criar uma página que solicita a geolocalização.
  2. Usei o Ngrok para gerar um link público da página (https://exemplo.ngrok.io).
  3. Disfarcei o link como se fosse de uma imagem no Google Drive, com miniatura e título sugestivos.
  4. A vítima, ao clicar no link, foi levada à página falsa e permitiu o acesso à sua localização.

📍 Resultado

Com a permissão dada, a ferramenta capturou:

  • Latitude e Longitude exatas
  • Precisão em metros
  • Informações do navegador e dispositivo

🔐 Conclusão

Esse teste mostra como a engenharia social pode ser mais perigosa do que ataques técnicos, especialmente quando a vítima confia no link enviado. É fundamental promover a conscientização digital para prevenir esse tipo de situação.


Instalação

git clone https://github.com/thewhiteh4t/seeker.git
cd seeker/
chmod +x install.sh
./install.sh

Instalação do Ngrok

brew install ngrok/ngrok/ngrok

ngrok http 8080

Uso

python3 seeker.py -h
usage: seeker.py [-h] [-k KML] [-p PORT] [-u] [-v] [-t TEMPLATE] [-d] [--telegram token:chatId] [--webhook WEBHOOK]

Opções:

  -h, --help                            mostrar esta mensagem de ajuda e sair
  -k KML, --kml KML                    nome do arquivo KML
  -p PORT, --port PORT                 porta do servidor web [ Padrão : 8080 ]
  -u, --update                         Verificar atualizações
  -v, --version                        Mostrar versão
  -t TEMPLATE, --template TEMPLATE     Selecionar automaticamente o modelo com o índice fornecido
  -d, --debugHTTP                     Desativar redirecionamento automático de http --> https para fins de teste
                                     (funciona apenas para modelos com arquivo index_temp.html)
  --telegram                         Enviar informações para um bot do Telegram, forneça o token e o chat a ser usado
                                     formato = token:chatId separados por dois pontos
  --webhook                          Enviar eventos para um endpoint webhook para processamento
                                     Observação: o endpoint deve ser não autenticado e aceitar requisições POST

Variáveis de Ambiente

Algumas das opções acima também podem ser ativadas via variáveis de ambiente, para facilitar a implantação. Outros parâmetros podem ser fornecidos via variáveis de ambiente para evitar o modo interativo.

Variáveis:


  DEBUG_HTTP            Equivalente a -d, --debugHTTP
  PORT                  Equivalente a -p, --port
  TEMPLATE              Equivalente a -t, --template
  TITLE                 Fornecer o título do grupo ou da página
  REDIRECT              Fornecer a URL para redirecionar o usuário após a conclusão do trabalho
  IMAGE                 Fornecer a imagem a ser usada, pode ser remota (http ou https) ou local
                        Observação: Imagens remotas serão baixadas localmente durante a inicialização
  DESC                  Fornecer a descrição do item (grupo ou página, dependendo do modelo)
  SITENAME              Fornecer o nome do site
  DISPLAY_URL           Fornecer a URL a ser exibida na página
  MEM_NUM               Fornecer o número de membros do grupo (Telegram até o momento)
  ONLINE_NUM            Fornecer o número de membros online do grupo (Telegram até o momento)
  TELEGRAM              Fornecer o token e o chat do Telegram para enviar informações a um bot
                        formato = token:chatId separados por dois pontos
  WEBHOOK               Fornecer a URL do webhook para encaminhar os eventos
                        Observação: o endpoint deve ser não autenticado e aceitar o método POST

Exemplos de Uso

Passo 1: No primeiro terminal

python3 seeker.py

Passo 2: No segundo terminal, inicie um serviço de túnel como ngrok

./ngrok http 8080

Opções

Gerar arquivo KML para o Google Earth
python3 seeker.py -k <nome_do_arquivo>
Usar Porta Personalizada
python3 seeker.py -p 1337
./ngrok http 1337
Pré-selecionar um modelo específico
python3 seeker.py -t 1
Túneis locais
ssh -R 80:localhost:8080 nokey@localhost.run
Tela do Seeker rodando com ngrok